<template>
  <div id="gaodeMap">
    <div class="headerTitle">综合监督管理平台</div>
    <div class="backBtn" @click="backBtn"></div>
    <div ref="chuangti" class="chuangtiStyle">
      <div class="chuangtiTop">
        <div class="compayName">{{ infoWindowData.title }}</div>
      </div>
    </div>
    <!-- 左右侧边内容 -->
    <div class="content">
      <div class="commonStatic aside-left-show">
        <div class="innerTitle">
          <div class="descTitle">公共统计数据</div>
          <div class="detail">查看详情</div>
        </div>
        <div class="company" @click="showEnterpriseDialog">
          <div class="companyNum">{{ companysNumObj.companyAccess }}</div>
          <div class="companyNumR">
            +{{ publicNewDateMonthObj.companyAccessNew }}
          </div>
        </div>
        <div class="signal">
          <div class="signalNum">{{ companysNumObj.sceneInfo }}</div>
          <div class="signalNumR">
            +{{ publicNewDateMonthObj.sceneInfoNew }}
          </div>
        </div>
        <div class="equip" @click="showAccessC">
          <div class="equipNum">{{ companysNumObj.deviceAccess }}</div>
          <div class="equipNumR">
            +{{ publicNewDateMonthObj.deviceAccessNew }}
          </div>
        </div>
        <div class="video">
          <div class="videoNum">{{ companysNumObj.videoAccess }}</div>
          <div class="videoNumR">
            +{{ publicNewDateMonthObj.videoAccessNew }}
          </div>
        </div>
      </div>
      <div class="equipStatus aside-left-show">
        <div class="detail" @click="showCompanyDialog">查看详情</div>
        <div class="num1">{{ equipStatusNum.equipOnLineNum }}</div>
        <div class="num2">{{ equipStatusNum.equipOutLineNum }}</div>
      </div>
      <div class="equipProblem aside-left-show">
        <div class="detail" @click="seeEquipProblem">查看详情</div>
        <div class="equipProblemList">
          <div class="top">
            <div class="left">设备名</div>
            <div class="right">故障说明</div>
          </div>
          <vue-seamless-scroll
            class="equipProblem-warp"
            :data="equipAlarmList"
            :class-option="defineScrollEquipP"
          >
            <div
              :class="['bottom']"
              v-for="item in equipAlarmList"
              :key="item.id"
            >
              <div class="left">{{ item.equipName }}</div>
              <div class="right">{{ item.faultDescription }}</div>
            </div>
          </vue-seamless-scroll>
        </div>
      </div>
      <div class="videoAlarm aside-right-show">
        <div class="detail">查看详情</div>
        <div class="alarmWarningC">
          <div
            @click="chooseVideoA('day')"
            :class="['alarmDesc', { active: isVideoAlarm === 'day' }]"
          >
            今日
          </div>
          <div
            @click="chooseVideoA('week')"
            :class="['alarmDesc', { active: isVideoAlarm === 'week' }]"
          >
            本周
          </div>
          <div
            @click="chooseVideoA('month')"
            :class="['alarmDesc', { active: isVideoAlarm === 'month' }]"
          >
            本月
          </div>
        </div>
        <div class="companyBox" v-if="companyVideoList.length > 0">
          <div
            class="companyList"
            v-for="(item, index) in companyVideoList"
            :key="index"
          >
            <div class="left">
              <div>{{ item.enterpriseName }}</div>
              <div class="time">{{ item.startTime }}</div>
            </div>
            <div class="right" @click="chooseBaoJ(item)">
              <img
                class="rightImg"
                src="@/assets/overall/组 80@1x.png"
                alt=""
              />
            </div>
          </div>
        </div>
        <div class="companyBox" style="text-align: center; color: #fff" v-else>
          暂无数据
        </div>
      </div>
      <div class="feelData aside-right-show">
        <div class="detail">查看详情</div>
        <div class="alarmWarningC">
          <div
            @click="chooseVideoF('day')"
            :class="['alarmDesc', { active: isFeelDate === 'day' }]"
          >
            感知数据
          </div>
          <div
            @click="chooseVideoF('week')"
            :class="['alarmDesc', { active: isFeelDate === 'week' }]"
          >
            报警数据
          </div>
        </div>
        <div class="feelListTitle">
          <div class="name">公司</div>
          <div class="equipName">设备名</div>
          <div class="name2">指标名称</div>
          <div v-show="isFeelDate === 'day'" class="value">感知值</div>
          <div v-show="isFeelDate === 'week'" class="value">报警值</div>
        </div>

        <vue-seamless-scroll
          class="feelData-warp"
          :data="feelList"
          :class-option="defineScrollEquipP"
        >
          <div class="feelList" v-if="feelList.length > 0">
            <div
              :class="['feelItem', { feelItemBgc: feelIndex % 2 }]"
              v-for="(feelItem, feelIndex) in feelList"
              :key="feelItem.id"
            >
              <div class="name" :title="feelItem.equipName">
                {{ feelItem.enterpriseName }}
              </div>
              <div class="equipName" :title="feelItem.equipName">
                {{ feelItem.equipName }}
              </div>
              <div class="name2" :title="feelItem.targetName">
                {{ feelItem.targetName }}
              </div>
              <div class="value">{{ feelItem.alarmValue }}</div>
            </div>
          </div>
          <div class="feelListEmpty" v-else>暂无数据</div>
        </vue-seamless-scroll>
      </div>
    </div>
    <div class="sheBeiZuo1dialogVisible" v-if="isDialogShow === 'device'">
      <div class="closeX">
        <img
          src="@/assets/overall/组 39@1x.png"
          alt=""
          @click="closeDialogShow"
        />
      </div>
      <div class="title">设备列表</div>
      <div class="table">
        <el-table
          :data="tableData"
          style="width: 100%; border: 'none'"
          :header-row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            borderRight: '1px solid #022627',
            height: '32px',
          }"
          :header-cell-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
          :row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
          }"
          :cell-style="{
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
        >
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceName"
            label="设备名称"
            width="130"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceContent"
            label="检测内容"
            width="120"
            :show-overflow-tooltip="true"
          >
          </el-table-column>

          <el-table-column
            header-align="center"
            align="center"
            prop="deviceStatus"
            label="设备状态"
            width="90"
          >
            <template slot-scope="scope">
              <span v-if="scope.row.deviceStatus === '在用'">{{
                scope.row.deviceStatus
              }}</span>
              <span v-else style="color: #ff9c9c">{{
                scope.row.deviceStatus
              }}</span>
            </template>
          </el-table-column>

          <el-table-column
            header-align="center"
            align="center"
            prop="deviceCompany"
            label="接入单位"
            width="180"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="emergencyScene"
            label="接入场景"
            width="120"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="devicePoint"
            label="接入点位"
            width="90"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceTime"
            label="登记时间"
            width="170"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
        </el-table>
      </div>
      <div class="footerPage">
        <el-pagination
          :current-page="params.page"
          :page-size="10"
          background
          layout="prev, pager, next"
          :total="totalItemCount"
          @current-change="currentPage"
        />
      </div>
    </div>
    <div class="enterprise1dialogVisible" v-if="isDialogShow === 'enterprise'">
      <div class="closeX">
        <img
          src="@/assets/overall/组 39@1x.png"
          alt=""
          @click="closeDialogShow"
        />
      </div>
      <div class="title">接入企业</div>
      <div class="table">
        <el-table
          :data="tableDataE"
          style="width: 100%; border: 'none'"
          :header-row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            borderRight: '1px solid #022627',
            height: '32px',
          }"
          :header-cell-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
          :row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
          }"
          :cell-style="{
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
          @row-click="seeColum"
        >
          <el-table-column
            header-align="center"
            align="center"
            prop="companyName"
            label="单位名称"
            width="240"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="companyPrincipal"
            label="单位负责人"
            width="120"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="companyPhone"
            label="负责人电话"
            width="180"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="companyAddress"
            label="单位地址"
            width="280"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="companyState"
            label="设备状态"
            width="80"
          >
            <template slot-scope="scope">
              <span v-if="scope.row.companyState === '在用'">{{
                scope.row.companyState
              }}</span>
              <span v-else style="color: #ff9c9c">{{
                scope.row.companyState
              }}</span>
            </template>
          </el-table-column>
        </el-table>
      </div>
      <div class="footerPage">
        <el-pagination
          :current-page="paramsE.page"
          :page-size="10"
          background
          layout="prev, pager, next"
          :total="totalItemEnterpriseCount"
          @current-change="currentEnterprisePage"
        />
      </div>
    </div>
    <div class="sheBeiZuo1dialogVisible" v-if="isDialogShow === 'accessC'">
      <div class="closeX">
        <img
          src="@/assets/overall/组 39@1x.png"
          alt=""
          @click="closeDialogShow"
        />
      </div>
      <div class="title">接入设备</div>
      <div class="table">
        <el-table
          :data="tableDataA"
          style="width: 100%; border: 'none'"
          :header-row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            borderRight: '1px solid #022627',
            height: '32px',
          }"
          :header-cell-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
          :row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
          }"
          :cell-style="{
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
        >
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceName"
            label="设备名称"
            width="220"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceType"
            label="设备类型"
            width="150"
            :show-overflow-tooltip="true"
          >
          </el-table-column>

          <el-table-column
            header-align="center"
            align="center"
            prop="deviceFactory"
            label="设备厂家"
            width="210"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="devicePlace"
            label="设备安装位置"
            width="150"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="deviceTime"
            label="安装日期"
            width="170"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
        </el-table>
      </div>
      <div class="footerPage">
        <el-pagination
          :current-page="paramsAccess.page"
          :page-size="10"
          background
          layout="prev, pager, next"
          :total="totalItemAccessCount"
          @current-change="currentAccessPage"
        />
      </div>
    </div>
    <!-- 地图点击公司详情 -->

    <div class="companyDetailDialogVisible" v-if="isDialogShow === 'company'">
      <div class="closeX">
        <img src="@/assets/overall/组 39@1x.png" alt="" @click="closeCompany" />
      </div>
      <div class="companyBox">
        <!-- <div class="left">
          <div class="pic">
            <img src="@/assets/overall/companyDetail/蒙版组 22@1x.png" alt="" />
          </div>
          <div class="jC">
            <div class="name">企业监测</div>
            <div class="img">
              <img src="@/assets/overall/companyDetail/路径@1x.png" alt="" />
            </div>
          </div>
        </div> -->
        <div class="right">
          <div class="rightTitle">{{ dialogCompanyObj.enterpriseName }}</div>
          <div class="cardBox">
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48107@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">应急场景</div>
                <div class="value">{{ dialogCompanyObj.emergencyScene }}</div>
              </div>
            </div>
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48109@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">企业规模</div>
                <div class="value">
                  {{ dialogCompanyObj.companyScale == 1 ? '规上' : '规下' }}
                </div>
              </div>
            </div>
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48111@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">设备数量</div>
                <div class="value">{{ dialogCompanyObj.deviceNum }}</div>
              </div>
            </div>
          </div>
          <div class="cardBox">
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48140@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">接入视频数量</div>
                <div class="value">{{ dialogCompanyObj.videoNum }}</div>
              </div>
            </div>
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48139@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">企业负责人</div>
                <div class="value">
                  {{ dialogCompanyObj.safetyProductionManagementName }}
                </div>
              </div>
            </div>
            <div class="cardItem">
              <div class="leftPic">
                <img
                  src="@/assets/overall/companyDetail/组 48138@1x.png"
                  alt=""
                />
              </div>
              <div class="rightName">
                <div class="subT">负责人联系电话</div>
                <div class="value">
                  {{ dialogCompanyObj.safetyProductionManagementNumber }}
                </div>
              </div>
            </div>
          </div>
          <div class="tableBOx">
            <el-table
              class="title_table"
              :header-row-style="{
                backgroundColor: '#053A3B',
                color: '#2FC4B2',
                borderBottom: '1px solid #022627',
                borderRight: '1px solid #022627',
                height: '32px',
              }"
              :header-cell-style="{
                backgroundColor: '#053A3B',
                color: '#2FC4B2',
                borderBottom: '1px solid #022627',
                height: '32px',
                padding: '7px 0',
              }"
            >
              <el-table-column
                v-for="(item, index) in columns"
                :key="index + 'i'"
                :label="item.label"
                :prop="item.prop"
                min-width="120"
                :width="item.sort"
                align="center"
              />
            </el-table>
            <vue-seamless-scroll
              class="seamless-warp"
              :data="dialogCompanyObj.monitoringData"
              :class-option="defineScroll"
              style="
                height: 100%;
                overflow: hidden;
                width: 100%;
                color: white;
                font-size: 18px;
                text-align: center;
              "
            >
              <el-table
                :data="dialogCompanyObj.monitoringData"
                style="width: 100%; border: 'none'; height: 100%"
                class="table_scroll"
                :row-style="{
                  backgroundColor: '#053A3B',
                  color: '#2FC4B2',
                  borderBottom: '1px solid #022627',
                  height: '32px',
                }"
                :cell-style="{
                  borderBottom: '1px solid #022627',
                  height: '32px',
                  padding: '7px 0',
                }"
              >
                <el-table-column
                  header-align="center"
                  align="center"
                  prop="equipmentName"
                  label="设备名称"
                  width="300"
                  :show-overflow-tooltip="true"
                >
                </el-table-column>
                <el-table-column
                  header-align="center"
                  align="center"
                  prop="targetName"
                  label="指标名称"
                  width="300"
                  :show-overflow-tooltip="true"
                >
                </el-table-column>
                <el-table-column
                  align="center"
                  header-align="center"
                  prop="value"
                  label="指标数值"
                  width="300"
                >
                  <template slot-scope="scope">
                    <span v-if="scope.row.value === '营业'">{{
                      scope.row.value
                    }}</span>
                    <span v-else style="color: #ff9c9c">{{
                      scope.row.value
                    }}</span>
                  </template>
                </el-table-column>

                <el-table-column
                  header-align="center"
                  align="center"
                  prop="monitoringTime"
                  label="监测时间"
                  width="320"
                  :show-overflow-tooltip="true"
                >
                </el-table-column>
              </el-table>
            </vue-seamless-scroll>
          </div>
        </div>
      </div>
    </div>
    <div
      class="enterprise1dialogVisible"
      v-if="isDialogShow === 'equipProblem'"
    >
      <div class="closeX">
        <img
          src="@/assets/overall/组 39@1x.png"
          alt=""
          @click="closeDialogShow"
        />
      </div>
      <div class="title">设备故障</div>
      <div class="table">
        <el-table
          :data="tableDataEquipC"
          style="width: 100%; border: 'none'"
          :header-row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            borderRight: '1px solid #022627',
            height: '32px',
          }"
          :header-cell-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
          :row-style="{
            backgroundColor: '#053A3B',
            color: '#2FC4B2',
            borderBottom: '1px solid #022627',
            height: '32px',
          }"
          :cell-style="{
            borderBottom: '1px solid #022627',
            height: '32px',
            padding: '7px 0',
          }"
        >
          <el-table-column
            header-align="center"
            align="center"
            prop="equipName"
            label="设备名称"
            width="220"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="checkContent"
            label="检测内容"
            width="220"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="faultDescription"
            label="故障说明"
            width="280"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
          <el-table-column
            header-align="center"
            align="center"
            prop="checkTime"
            label="检测时间"
            width="180"
            :show-overflow-tooltip="true"
          >
          </el-table-column>
        </el-table>
      </div>
      <div class="footerPage">
        <el-pagination
          :current-page="paramsEquipProblem.page"
          :page-size="10"
          background
          layout="prev, pager, next"
          :total="totalItemEquipProblem"
          @current-change="currentEquipProblem"
        />
      </div>
    </div>
    <div class="hiddenBtn">
      <img
        @click="chooseIsHidden(false)"
        v-show="isHidden === true"
        src="@/assets/overall/组 48189-2@1x.png"
        alt=""
      />
      <img
        @click="chooseIsHidden(true)"
        v-show="isHidden === false"
        src="@/assets/overall/组 48189@1x.png"
        alt=""
      />
    </div>
    <div
      v-show="isHidden === false && dataScope == 1"
      class="areaSelect"
      @mouseenter="mouseClose"
    >
      <div
        @click="chooseSelectCity('330500')"
        :class="['allCityM', { allCityMS: areaChoose === '330500' }]"
      >
        全市总览
      </div>
      <div
        @click="chooseSelectCity('330503')"
        :class="['allCity', { allCityS: areaChoose === '330503' }]"
      >
        南浔区
      </div>
      <div
        @click="chooseSelectCity('330502')"
        :class="['allCity', { allCityS: areaChoose === '330502' }]"
      >
        吴兴区
      </div>
      <div
        @click="chooseSelectCity('330504')"
        :class="['allCityL', { allCityLS: areaChoose === '330504' }]"
      >
        南太湖新区
      </div>
      <div
        @click="chooseSelectCity('330523')"
        :class="['allCity', { allCityS: areaChoose === '330523' }]"
      >
        安吉县
      </div>
      <div
        @click="chooseSelectCity('330521')"
        :class="['allCity', { allCityS: areaChoose === '330521' }]"
      >
        德清县
      </div>
      <div
        @click="chooseSelectCity('330522')"
        :class="['allCity', { allCityS: areaChoose === '330522' }]"
      >
        长兴县
      </div>
      <div
        @click="chooseSelectCity('长合区')"
        :class="['allCity', { allCityS: areaChoose === '长合区' }]"
      >
        长合区
      </div>
    </div>
    <div v-show="isHidden === false" class="multiSelect">
      <div
        class="leftBOX"
        @mouseenter="mouseLeft"
        v-if="dataScope == 1 || dataScope == 2"
      >
        <div class="selectInp">
          <div v-if="!checkedStreetList.length">请选择街道</div>
          <div class="selectItem" v-if="checkedStreetList.length > 0">
            <div class="street">{{ checkedStreetList[0].name }}</div>
            <div class="errorX" @click="deleteStreetList">X</div>
          </div>
          <div class="selectItemM" v-if="checkedStreetList.length > 1">
            <div class="streetM">+{{ checkedStreetList.length - 1 }}...</div>
          </div>
          <div class="arrowDown" @click="showLeftBox = !showLeftBox">
            <i class="el-icon-caret-bottom"></i>
          </div>
        </div>
      </div>
      <div class="rightBox" @mouseenter="mouseRight">
        <div class="selectInp">
          <div v-if="!checkedSceneList.length">请选择场景</div>
          <div class="selectItem" v-if="checkedSceneList.length > 0">
            <div class="imgI">
              <img mode="scaleToFill" :src="checkedSceneList[0].url" alt="" />
            </div>
            <div class="street">{{ checkedSceneList[0].name }}</div>
            <div class="errorX" @click="deleteSceneList(0)">X</div>
          </div>
          <div class="selectItem" v-if="checkedSceneList.length > 1">
            <div class="imgI">
              <img mode="scaleToFill" :src="checkedSceneList[1].url" alt="" />
            </div>
            <div class="street">{{ checkedSceneList[1].name }}</div>
            <div class="errorX" @click="deleteSceneList(1)">X</div>
          </div>
          <div class="selectItemM" v-if="checkedSceneList.length > 2">
            <div class="streetM">+{{ checkedSceneList.length - 2 }}...</div>
          </div>
          <div class="arrowDown" @click="showRightBox = !showRightBox">
            <i class="el-icon-caret-bottom"></i>
          </div>
        </div>
      </div>
    </div>
    <div
      class="multiStreetL"
      v-if="showLeftBox"
      @mouseenter="showLeftBox = true"
      @mouseleave="showLeftBox = false"
    >
      <div
        v-for="(item, index) in leftStreetList"
        :key="index"
        :class="['streetItem', { streetItemChecked: item.checked }]"
        @click="chooseStreetList(index)"
      >
        <div class="left">{{ item.name }}</div>
        <div :class="{ right: !item.checked }">
          <img
            class="checkRight"
            src="@/assets/overall/组 48116@1x.png"
            mode="scaleToFill"
          />
        </div>
      </div>
    </div>
    <div
      class="multiStreetR"
      v-if="showRightBox"
      @mouseenter="showRightBox = true"
      @mouseleave="showRightBox = false"
    >
      <div
        v-for="(item, index) in rightStreetList"
        :key="index"
        :class="['streetItem']"
        @click="chooseSceneList(index)"
      >
        <div class="left">
          <div class="img">
            <img :src="item.url" mode="scaleToFill" />
          </div>
        </div>
        <div :class="['rightBox', { streetItemChecked: item.checked }]">
          <div :class="['name']">
            {{ item.name }}
          </div>
          <div :class="{ right: !item.checked }">
            <img
              class="checkRight"
              src="@/assets/overall/组 48116@1x.png"
              mode="scaleToFill"
            />
          </div>
        </div>
      </div>
    </div>
    <div class="footerNav"></div>
  </div>
</template>

<script>
import {
  areaCompany,
  areaDict,
  getEquipAlarm,
  deviceDetails,
  screenData,
  screenCompanyData,
  companyDetails,
  deviceNumDetails,
  getDustSensor,
  deviceFaultDetail,
  deviceFault,
  areaDictByRole,
} from '@/api/index'
import AMapLoader from '@amap/amap-jsapi-loader'
// import icon1 from '@/assets/overall/map_icon1.png'
import icon2 from '@/assets/overall/map_icon2.png'

import img1 from '@/assets/overall/圆形 74@1x.png'
import img2 from '@/assets/overall/圆形 75@1x.png'
import img3 from '@/assets/overall/圆形 73@1x.png'
import img4 from '@/assets/overall/圆形 72@1x.png'
import img5 from '@/assets/overall/圆形 70@1x.png'
import img6 from '@/assets/overall/圆形 71@1x.png'

export default {
  name: 'overallPage',
  props: {},
  components: {},
  data() {
    return {
      // 地图
      gaodeMap: null,
      searchCode: '330500',
      markerData: [],
      infoWindowData: {
        title: '',
      },
      //  end地图
      isVideoAlarm: 'day',
      companyVideoList: [],
      companysNumObj: {
        companyAccess: '-',
        deviceAccess: '-',
        sceneInfo: '-',
        videoAccess: '-',
      },
      publicNewDateMonthObj: {
        videoAccessNew: '-',
        deviceAccessNew: '-',
        sceneInfoNew: '-',
        companyAccessNew: '-',
      },
      equipStatusNum: {
        equipOnLineNum: '-',
        equipOutLineNum: '-',
      },
      equipAlarmList: [],
      isFeelDate: 'week',
      alarmDate: '',
      feelList: [],
      isDialogShow: '',
      tableData: [],
      totalItemCount: null,
      params: {
        pageNum: 1,
        pageSize: 10,
      },
      areaChoose: '330500',
      leftStreetList: [],
      rightStreetList: [
        {
          name: '有限空间',
          checked: false,
          url: require('/src/assets/overall/圆形 74@1x.png'),
          emergencyCode: 'SC006',
        },
        {
          name: '粉尘涉爆',
          checked: false,
          url: require('/src/assets/overall/圆形 75@1x.png'),
          emergencyCode: 'SC003',
        },
        {
          name: '危化',
          checked: false,
          url: require('/src/assets/overall/圆形 73@1x.png'),
          emergencyCode: 'SC005',
        },
        {
          name: '矿山',
          checked: false,
          url: require('/src/assets/overall/圆形 72@1x.png'),
          emergencyCode: 'SC004',
        },
        {
          name: '钢铁',
          checked: false,
          url: require('/src/assets/overall/圆形 70@1x.png'),
          emergencyCode: 'SC001',
        },
        {
          name: '铝加工',
          checked: false,
          url: require('/src/assets/overall/圆形 71@1x.png'),
          emergencyCode: 'SC002',
        },
      ],
      allAreaDict: [],
      showLeftBox: false,
      showRightBox: false,
      polygon: null,
      district: null,
      dialogCompanyObj: {
        enterpriseName: 'XXX公司',
        emergencyScene: '-',
        safetyProductionManagementName: '-',
        safetyProductionManagementNumber: '-',
        companyScale: '-',
        deviceNum: '-',
        videoNum: '-',
        monitoringData: [
          {
            equipmentName: null,
            targetName: '生产车间除尘器灰斗温度进出口压差',
            value: 328,
            monitoringTime: '2024-06-07 09:01:53',
          },
        ],
      },
      columns: [
        { prop: 'equipmentName', label: '设备名称', sort: 300 },
        { prop: 'targetName', label: '指标名称', sort: 300 },
        { prop: 'value', label: '指标数值', sort: 300 },
        { prop: 'monitoringTime', label: '监测时间', sort: 320 },
      ],
      marker: null,
      totalItemEnterpriseCount: null,
      paramsE: {
        pageNum: 1,
        pageSize: 10,
      },
      tableDataE: [],
      totalItemAccessCount: null,
      paramsAccess: {
        pageNum: 1,
        pageSize: 10,
      },
      tableDataA: [],
      isHidden: true,
      mapList: [
        {
          name: '有限空间企业',
          pic: img1,
        },
        {
          name: '粉尘涉爆企业',
          pic: img2,
        },
        {
          name: '危险化学品企业',
          pic: img3,
        },
        {
          name: '矿山企业',
          pic: img4,
        },
        {
          name: '钢铁企业',
          pic: img5,
        },
        {
          name: '铝加工(深井铸造)企业',
          pic: img6,
        },
      ],
      tableDataEquipC: [],
      totalItemEquipProblem: null,
      paramsEquipProblem: {
        pageNum: 1,
        pageSize: 10,
      },
      dataScope: '',
    }
  },
  methods: {
    // 设备状态
    async getScreenData(obj) {
      const res = await screenData(obj)
      this.equipStatusNum.equipOnLineNum = res.data.totalEquipOnlineNum
      this.equipStatusNum.equipOutLineNum = res.data.totalEquipOfflineNum

      this.companysNumObj.companyAccess = res.data.totalEnterpriseNum
      this.companysNumObj.deviceAccess = res.data.totalEquipNum
      this.companysNumObj.sceneInfo = res.data.totalTargetNum
      this.companysNumObj.videoAccess = res.data.totalVideoNum

      this.publicNewDateMonthObj.videoAccessNew = res.data.totalVideoIncreaseNum
      this.publicNewDateMonthObj.deviceAccessNew =
        res.data.totalEquipIncreaseNum
      this.publicNewDateMonthObj.sceneInfoNew = res.data.totalTargetIncreaseNum
      this.publicNewDateMonthObj.companyAccessNew =
        res.data.totalEnterpriseIncreaseNum
    },
    showCompanyDialog() {
      this.isDialogShow = 'device'
      this.showLeftBox = false
      this.showRightBox = false
      const { renderL, renderR } = this.getFilterCode()

      const obj = {
        ...this.params,
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.getDeviceDetails(obj)
    },
    closeDialogShow() {
      this.isDialogShow = ''
    },
    currentPage(pageNum) {
      const { renderL, renderR } = this.getFilterCode()
      const params = {
        pageNum: pageNum,
        pageSize: this.params.pageSize,
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.getDeviceDetails(params)
    },
    async getDeviceDetails(params) {
      const res = await deviceDetails(params)
      this.tableData = res.data
      this.totalItemCount = res.total
    },
    backBtn() {
      this.$router.push('/index')
    },
    initGaoDeMap() {
      // 高德地图key的密钥
      window._AMapSecurityConfig = {
        securityJsCode: '559cdc92fb08026896143b094e257b8a', // 密钥
      }
      AMapLoader.load({
        key: '557e9cac70e929f2a3837a266c23883a', // 替换为你的高德地图API Key
        version: '2.0',
        plugins: ['AMap.DistrictSearch'],
      }).then((AMap) => {
        this.gaodeMap = new AMap.Map('gaodeMap', {
          mapStyle: 'amap://styles/blue', //设置地图的显示样式
          center: [120.1555, 30.9],
          viewMode: '2D',
          labelzIndex: 130,
          pitch: 40,
          zoom: 10,
          zooms: [10, 20], //地图显示的缩放级别范围, 默认为 [2, 20] ，
          // rotation: 20,//初始地图顺时针旋转的角度
          // mapStyle: 'amap://styles/dark'
        })
        this.districtSearch(this.areaChoose.substring(0, 6))
      })
    },
    //2.添加点标记
    districtSearch(areaChoose) {
      if (!this.district) {
        // 创建行政区划查询对象
        this.district = new AMap.DistrictSearch({
          extensions: 'all',
          level: 'city', //level (string) 关键字对应的行政区级别或商圈，可选值： country：国家 province：省/直辖市 city：市 district：区/县 biz_area：商圈
          //   subdistrict: 0
        })
      }
      // 查询并显示
      this.district.search(areaChoose, (status, result) => {
        if (status === 'complete') {
          var geojosn = result.districtList[0]?.boundaries[0] //该县拿到数据有两组，正常获取下标0
          // console.log(geojosn)
          this.polygon = new AMap.Polygon({
            path: geojosn, //多边形路径
            strokeColor: '#00d5d8', //线条颜色
            strokeWeight: 2, //线条宽度
            fillColor: 'rgba(0, 188, 193,0)', //多边形填充颜色0, 188, 193
            fillOpacity: 0.1, //填充透明度
          })

          // 添加多边形到地图上
          this.polygon.setMap(this.gaodeMap)
          // 调整地图视野到多边形所覆盖的区域
          this.gaodeMap.setFitView(this.polygon)
          if (areaChoose === '330500') {
            setTimeout(() => {
              this.gaodeMap.setZoom(10)
            }, 100) // 使用 setTimeout 以确保视野调整已完成
          } else {
            setTimeout(() => {
              this.gaodeMap.setZoom(11)
            }, 100) // 使用 setTimeout 以确保视野调整已完成
          }
          // console.log(this.gaodeMap.getZoom())
          this.addMarker()
        }
      })
    },
    addMarker() {
      let arr = []
      if (!this.markers) {
        this.markers = []
      }

      // 清除之前的标记点
      this.markers.forEach((marker) => {
        this.gaodeMap.remove(marker)
      })
      this.markers = []

      this.markerData.forEach((item) => {
        let marker = new AMap.Marker({
          map: this.gaodeMap,
          icon: item.icon, //点标记图片路径
          position: item.position, //位置
        })

        // 存储标记点
        this.markers.push(marker)

        arr.push(Object.assign(item, { mapId: marker._amap_id }))
        // 鼠标经过标记 获取所点击标记的信息以及窗体要展示的数据，创建信息窗体
        AMap.Event.addListener(marker, 'mouseover', () => {
          this.$refs.chuangti.style.display = 'block'
          // marker.setIcon(icon1)
          this.createInfoWindow(marker, arr)
        })
        AMap.Event.addListener(marker, 'click', () => {
          this.isDialogShow = 'company'
          this.screenCompanyData(this.infoWindowData.id)
        })
        // 鼠标移出
        AMap.Event.addListener(marker, 'mouseout', () => {
          // marker.setIcon(icon2)
          this.closeInfoWindow()
          this.$refs.chuangti.style.display = 'none'
        })
      })
      // console.log(this.marker)
    },
    //4.构建自定义窗体并打开
    createInfoWindow(marker, arr) {
      let arrNew = arr.filter((x) => x.mapId == marker._amap_id)
      this.infoWindowData = arrNew && arrNew[0]
      // console.log(this.infoWindowData)
      let infoWindow = new AMap.InfoWindow({
        isCustom: true, //使用自定义窗体
        content: this.$refs.chuangti,
        // offset: new AMap.Pixel(16, -45)
        offset: new AMap.Pixel(60, 0),
      })
      infoWindow.open(this.gaodeMap, marker.getPosition())
    },
    //关闭窗体
    closeInfoWindow() {
      this.gaodeMap.clearInfoWindow()
    },
    chooseVideoA(params) {
      this.isVideoAlarm = params
    },
    chooseBaoJ(item) {
      console.log(item)
    },
    async getEquipAlarm(obj) {
      const res = await deviceFault(obj)
      this.equipAlarmList = res.data
    },
    chooseVideoF(params) {
      this.isFeelDate = params
      const { renderL, renderR } = this.getFilterCode()
      if (this.isFeelDate === 'week') {
        this.getEquipAlarmDate({
          date: null,
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: renderL.length ? renderL : null,
          emergencySceneCodeList: renderR.length ? renderR : null,
        })
      } else {
        this.getDustSensor({
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: renderL.length ? renderL : null,
          emergencySceneCodeList: renderR.length ? renderR : null,
        })
      }
    },
    async getEquipAlarmDate(obj) {
      const res = await getEquipAlarm(obj)
      this.feelList = res.data
    },
    async getDustSensor(obj) {
      const res = await getDustSensor(obj)
      const list = res.data
      this.feelList = list.map((item) => {
        return {
          ...item,
          alarmValue: item.targetStatusName,
        }
      })
    },
    async chooseSelectCity(e) {
      console.log(e)
      this.isDialogShow = ''
      this.isFeelDate = 'week'
      this.showLeftBox = false
      this.showRightBox = false
      this.areaChoose = e
      this.checkedSceneList.forEach((item) => (item.checked = false))
      this.checkedStreetList.forEach((item) => (item.checked = false))
      await this.getEquipAlarm({
        areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
        townCodeList: null,
        emergencySceneCodeList: null,
      })
      if (this.isFeelDate === 'week') {
        this.getEquipAlarmDate({
          date: null,
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: null,
          emergencySceneCodeList: null,
        })
      } else {
        this.getDustSensor({
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: null,
          emergencySceneCodeList: null,
        })
      }
      await this.areaCompany({
        areaCode: this.areaChoose,
        streetCode: null,
        type: 'all',
      })
      await this.getScreenData({
        areaCode: this.areaChoose,
        streetCode: null,
        type: 'all',
      })

      if (e !== '南太湖新区' && e !== '长合区' && e !== '330500') {
        const findList = this.allAreaDict.find((item) => item.areaCode === e)
        this.leftStreetList = findList?.platformAreaCodeVoList.map((item) => {
          return {
            name: item.areaName,
            areaCode: item.areaCode,
            checked: false,
          }
        })
      } else if (e === '330500') {
        const mergeList = this.allAreaDict.reduce((acc, obj) => {
          return acc.concat(obj.platformAreaCodeVoList)
        }, [])

        this.leftStreetList = mergeList.map((item) => {
          return {
            name: item.areaName,
            areaCode: item.areaCode,
            checked: false,
          }
        })
      } else {
        this.leftStreetList = []
      }
      if (this.polygon) {
        this.gaodeMap.remove(this.polygon) //清除上次结果
        this.polygon.setMap(null)
      }
      this.districtSearch(e)
    },
    // 选择街道
    chooseStreetList(index) {
      this.isDialogShow = ''
      this.isFeelDate = 'week'
      this.leftStreetList[index].checked = !this.leftStreetList[index].checked
      this.filterListFunction()
    },
    deleteStreetList() {
      this.checkedStreetList[0].checked = false
      this.filterListFunction()
    },
    deleteSceneList(index) {
      this.checkedSceneList[index].checked = false
      this.filterListFunction()
    },
    // 选择场景
    chooseSceneList(index) {
      this.isDialogShow = ''
      this.isFeelDate = 'week'
      this.rightStreetList[index].checked = !this.rightStreetList[index].checked
      this.filterListFunction()
    },
    async areaDict() {
      const res = await areaDict()
      this.allAreaDict = res.data
      const mergeList = res.data.reduce((acc, obj) => {
        return acc.concat(obj.platformAreaCodeVoList)
      }, [])

      this.leftStreetList = mergeList.map((item) => {
        return {
          name: item.areaName,
          areaCode: item.areaCode,
          checked: false,
        }
      })
    },
    async areaCompany(obj) {
      const res = await areaCompany(obj)
      const list = res.data.map((item) => {
        return {
          ...item,
          title: item.enterpriseName,
          icon: icon2,
          position: [item.longitude, item.latitude],
        }
      })
      list.forEach((listItem) => {
        const findItem = this.mapList.find((item) =>
          item.name.includes(listItem.emergencySceneCode)
        )
        if (findItem) {
          listItem.icon = findItem.pic
        }
      })
      this.markerData = list
      this.addMarker()
    },
    async screenCompanyData(identificationcode) {
      const res = await screenCompanyData({ identificationcode })
      this.dialogCompanyObj = res.data
    },
    mouseLeft() {
      this.showLeftBox = true
      this.showRightBox = false
    },
    mouseRight() {
      this.showLeftBox = false
      this.showRightBox = true
    },
    mouseClose() {
      this.showLeftBox = false
      this.showRightBox = false
    },
    filterListFunction() {
      const { renderL, renderR } = this.getFilterCode()
      this.getEquipAlarm({
        areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
        townCodeList: renderL.length ? renderL : null,
        emergencySceneCodeList: renderR.length ? renderR : null,
      })

      if (this.isFeelDate === 'week') {
        this.getEquipAlarmDate({
          date: null,
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: renderL.length ? renderL : null,
          emergencySceneCodeList: renderR.length ? renderR : null,
        })
      } else {
        this.getDustSensor({
          areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
          townCodeList: renderL.length ? renderL : null,
          emergencySceneCodeList: renderR.length ? renderR : null,
        })
      }
      this.areaCompany({
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      })
      this.getScreenData({
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      })
    },
    showEnterpriseDialog() {
      this.isDialogShow = 'enterprise'
      this.showLeftBox = false
      this.showRightBox = false
      const { renderL, renderR } = this.getFilterCode()

      const obj = {
        ...this.paramsE,
        areaCode: this.areaChoose,
        streetCode: renderL ? renderL.toString() : null,
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.companyDetails(obj)
    },
    currentEnterprisePage(pageNum) {
      const { renderL, renderR } = this.getFilterCode()
      const params = {
        pageNum: pageNum,
        pageSize: this.paramsE.pageSize,
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.companyDetails(params)
    },
    async companyDetails(obj) {
      const res = await companyDetails(obj)
      this.tableDataE = res.data
      this.totalItemEnterpriseCount = res.total
    },
    showAccessC() {
      this.isDialogShow = 'accessC'
      this.showLeftBox = false
      this.showRightBox = false
      const { renderL, renderR } = this.getFilterCode()

      const obj = {
        ...this.paramsAccess,
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.deviceNumDetails(obj)
    },
    currentAccessPage(pageNum) {
      const { renderL, renderR } = this.getFilterCode()
      const params = {
        pageNum: pageNum,
        pageSize: this.paramsAccess.pageSize,
        areaCode: this.areaChoose,
        streetCode: renderL.toString(),
        type: renderR.length ? renderR.toString() : 'all',
      }
      this.deviceNumDetails(params)
    },
    async deviceNumDetails(obj) {
      const res = await deviceNumDetails(obj)
      this.tableDataA = res.data
      this.totalItemAccessCount = res.total
    },
    getFilterCode() {
      const filterL = this.leftStreetList?.filter((item) => item.checked)
      const renderL = filterL?.map((item) => item.areaCode)
      const filterR = this.rightStreetList.filter((item) => item.checked)
      const renderR = filterR.map((item) => item.emergencyCode)
      console.log(renderL, renderR)
      return {
        renderL,
        renderR,
      }
    },
    chooseIsHidden(e) {
      this.isHidden = e
    },
    async seeColum(e) {
      this.isDialogShow = 'company'
      this.screenCompanyData(e.identificationCode)
    },
    seeEquipProblem() {
      this.isDialogShow = 'equipProblem'
      const { renderL, renderR } = this.getFilterCode()

      const obj = {
        ...this.paramsEquipProblem,
        areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
        townCodeList: renderL.length ? renderL : null,
        emergencySceneCodeList: renderR.length ? renderR : null,
      }
      this.deviceFaultDetail(obj)
    },
    currentEquipProblem(pageNum) {
      const { renderL, renderR } = this.getFilterCode()
      const params = {
        pageNum: pageNum,
        pageSize: this.paramsEquipProblem.pageSize,
        areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
        townCodeList: renderL.length ? renderL : null,
        emergencySceneCodeList: renderR.length ? renderR : null,
      }
      this.deviceFaultDetail(params)
    },
    async deviceFaultDetail(obj) {
      const res = await deviceFaultDetail(obj)
      console.log(res)
      this.tableDataEquipC = res.data.list
      this.totalItemEquipProblem = res.data.total
    },
    closeCompany() {
      this.isDialogShow = ''
    },
    async areaDictByRole(obj) {
      const res = await areaDictByRole(obj)

      if (this.dataScope == 1) {
        this.areaDict()
      } else if (this.dataScope == 3) {
        this.areaChoose = res.data[0].areaCode.substring(0, 6)

        this.leftStreetList = [
          {
            name: '',
            areaCode: res.data[0].areaCode,
            checked: true,
          },
        ]
      } else {
        this.areaChoose = res.data[0].areaCode.substring(0, 6)

        this.leftStreetList = res.data[0].platformAreaCodeVoList?.map(
          (item) => {
            return {
              name: item.areaName,
              areaCode: item.areaCode,
              checked: false,
            }
          }
        )
      }
      // console.log(this.areaChoose)
    },
  },
  async created() {
    const res = JSON.parse(localStorage.getItem('vuexRoleList'))
    this.dataScope = res.roleList.dataScope
    await this.areaDictByRole({
      dataScope: this.dataScope,
      areaCode: res.areaCode,
    })
    const { renderL, renderR } = this.getFilterCode()
    this.areaCompany({
      areaCode: this.areaChoose,
      streetCode: renderL.toString(),
      type: renderR.length ? renderR.toString() : 'all',
    })
    this.getScreenData({
      areaCode: this.areaChoose,
      streetCode: renderL.toString(),
      type: renderR.length ? renderR.toString() : 'all',
    })

    this.getEquipAlarmDate({
      date: null,
      areaCode: this.areaChoose === '330500' ? null : this.areaChoose,
      townCodeList: renderL.length ? renderL : null,
      emergencySceneCodeList: renderR.length ? renderR : null,
    })
  },
  mounted() {
    this.$nextTick(() => {
      this.initGaoDeMap()
    })
  },
  watch: {},
  computed: {
    checkedStreetList() {
      const list = this.leftStreetList?.filter((item) => item.checked)
      return list ? list : []
    },
    checkedSceneList() {
      return this.rightStreetList.filter((item) => item.checked)
    },
    defineScroll() {
      return {
        step: 0.3, // 数值越大速度滚动越快
        limitMoveNum: 2, // 开始无缝滚动的数据量 this.dataList.length
        hoverStop: false, // 是否开启鼠标悬停stop
        direction: 1, // 0向下 1向上 2向左 3向右
        openWatch: true, // 开启数据实时监控刷新dom
        singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
        singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
        waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
      }
    },
    defineScrollEquipP() {
      return {
        step: 0.3, // 数值越大速度滚动越快
        limitMoveNum: 2, // 开始无缝滚动的数据量 this.dataList.length
        hoverStop: true, // 是否开启鼠标悬停stop
        direction: 1, // 0向下 1向上 2向左 3向右
        openWatch: false, // 开启数据实时监控刷新dom
        singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
        singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
        waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
      }
    },
  },
  filters: {},
}
</script>

<style scoped lang="scss">
// 地图
#gaodeMap {
  width: 1920px;
  height: 1080px;
  position: relative;
  // background-color: #ccc;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  z-index: 0;
  position: absolute;
}
:deep() .amap-logo {
  display: none !important;
}
:deep() .amap-copyright {
  display: none !important;
}
.chuangtiStyle {
  width: 224px;
  height: 31px;
  background-image: url('@/assets/rentMoreFactory/矩形 28287@1x.png');
  background-size: cover;
  background-repeat: no-repeat;
  line-height: 31px;
  box-sizing: border-box;
  display: none;
  .chuangtiTop {
    display: flex;
    .compayName {
      width: 240px;
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
      font-family: 思源黑体;
      font-size: 16px;
      font-weight: bold;
      line-height: normal;
      letter-spacing: 0em;
      color: #ffffff;
      margin-right: 15px;
    }
  }
  .chuangtiBottom {
    margin-top: 17px;

    img {
      margin-right: 17px;
      width: 21px;
      height: 20px;
    }
  }
}
// 地图 end
.backBtn {
  position: absolute;
  top: 8px;
  left: 19px;
  width: 111px;
  height: 36px;
  background-image: url('@/assets/overall/back_btn.png');
  z-index: 100;
  cursor: pointer;
}
.content {
  position: relative;
  z-index: 99;
  .commonStatic {
    background-image: url('@/assets/overall/组 48059@1x.png');
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    left: 11px;
    top: 72px;
    width: 420px;
    height: 282px;
    .innerTitle {
      color: #fff;
      background-image: url('@/assets/overall/组 48060@1x.png');
      background-size: cover;
      background-repeat: no-repeat;
      width: 405px;
      box-sizing: border-box;
      height: 36px;
      font-size: 20px;
      font-weight: bold;
      position: relative;
      .descTitle {
        position: absolute;
        left: 15px;
        top: 7px;
      }
      .detail {
        color: #5de1d4;
        font-size: 12px;
        font-weight: bold;
        position: absolute;
        top: 5px;
        left: 327px;
        cursor: pointer;
      }
    }

    .company {
      background-image: url('@/assets/overall/组 231@1x.png');
      background-size: cover;
      background-repeat: no-repeat;
      width: 180px;
      height: 92px;
      position: absolute;
      left: 20px;
      top: 58px;
      cursor: pointer;
      box-sizing: border-box;
      .companyNum {
        position: absolute;
        left: 74px;
        top: 15px;
        color: #fff;
        font-size: 28px;
        font-weight: bold;
      }
      .companyNumR {
        position: absolute;
        top: 2px;
        right: 6px;
        color: #103f3a;
        font-size: 12px;
        font-weight: bold;
      }
    }
    .signal {
      background-image: url('@/assets/overall/组 48062@1x.png');
      background-size: cover;
      background-repeat: no-repeat;
      width: 180px;
      height: 92px;
      position: absolute;
      left: 220px;
      top: 58px;
      .signalNum {
        position: absolute;
        left: 74px;
        top: 15px;
        color: #fff;
        font-size: 28px;
        font-weight: bold;
      }
      .signalNumR {
        position: absolute;
        top: 2px;
        right: 6px;
        color: #103f3a;
        font-size: 12px;
        font-weight: bold;
      }
    }
    .equip {
      background-image: url('@/assets/overall/组 229@1x (1).png');
      background-size: cover;
      box-sizing: border-box;
      background-repeat: no-repeat;
      background-position: center;
      width: 180px;
      height: 93px;
      position: absolute;
      left: 20px;
      top: 166px;
      .equipNum {
        position: absolute;
        left: 74px;
        top: 15px;
        color: #fff;
        font-size: 28px;
        font-weight: bold;
      }
      .equipNumR {
        position: absolute;
        top: 2px;
        right: 6px;
        color: #103f3a;
        font-size: 12px;
        font-weight: bold;
      }
    }
    .video {
      background-image: url('@/assets/overall/组 222@1x (1).png');
      background-size: cover;
      box-sizing: border-box;
      background-repeat: no-repeat;
      background-position: center;
      width: 180px;
      height: 93px;
      position: absolute;
      left: 220px;
      top: 166px;
      .videoNum {
        position: absolute;
        left: 74px;
        top: 15px;
        color: #fff;
        font-size: 28px;
        font-weight: bold;
      }
      .videoNumR {
        position: absolute;
        top: 2px;
        right: 6px;
        color: #103f3a;
        font-size: 12px;
        font-weight: bold;
      }
    }
  }
  .equipStatus {
    background-image: url('@/assets/overall/组 48063@1x.png');
    background-size: cover;
    background-repeat: no-repeat;
    width: 420px;
    height: 329px;
    position: absolute;
    left: 11px;
    top: 364px;
    .detail {
      color: #5de1d4;
      font-size: 12px;
      font-weight: bold;
      position: absolute;
      top: 5px;
      left: 327px;
      cursor: pointer;
    }
    .num1 {
      color: #fff;
      font-size: 32px;
      font-weight: bold;
      position: absolute;
      top: 86px;
      left: 65px;
      width: 100px;
      text-align: center;
    }
    .num2 {
      color: #fff;
      font-size: 32px;
      font-weight: bold;
      position: absolute;
      top: 86px;
      left: 240px;
      width: 100px;
      text-align: center;
    }
  }
  .equipProblem {
    background-image: url('@/assets/overall/组 48063@1x01.png');
    background-size: cover;
    background-repeat: no-repeat;
    width: 420px;
    height: 333px;
    position: absolute;
    left: 11px;
    top: 703px;

    .detail {
      color: #5de1d4;
      font-size: 12px;
      font-weight: bold;
      position: absolute;
      top: 8px;
      left: 327px;
      cursor: pointer;
    }
    .equipProblemList {
      margin-top: 63px;
      padding: 0 15px;
      width: 390px;
      height: 230px;
      .equipProblem-warp {
        height: 100%;
        overflow: hidden;
        width: 100%;
        color: white;
        font-size: 18px;
        text-align: center;
      }
      .left {
        width: 50%;
        text-align: center;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
      .right {
        width: 50%;
        text-align: center;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
      .top {
        padding-bottom: 13px;
        color: #fff;
        font-size: 14px;
        font-weight: bold;
        border-bottom: 1px solid #2fc4b2;
        display: flex;
        width: 390px;
      }
      .bottom {
        padding-bottom: 13px;
        color: #fff;
        font-size: 14px;
        border-bottom: 1px solid #2fc4b2;
        display: flex;
        width: 390px;
        margin-top: 12px;
        .right {
          color: #ffbd07;
        }
      }
    }
  }
  .videoAlarm {
    background-image: url('@/assets/overall/Right_02@1x.png');
    background-size: cover;
    background-repeat: no-repeat;
    width: 420px;
    height: 523px;
    position: absolute;
    right: 12px;
    top: 72px;

    .detail {
      color: #5de1d4;
      font-size: 12px;
      font-weight: bold;
      position: absolute;
      top: 8px;
      left: 327px;
      cursor: pointer;
    }
    .alarmWarningC {
      box-sizing: border-box;
      width: 420px;
      padding-top: 32px;
      display: flex;
      justify-content: right;
      align-items: center;
      padding-right: 15px;
      font-size: 12px;
      margin-bottom: 20px;
      .alarmDesc {
        width: 40px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        color: #59dace;
        border-radius: 2px;
        margin-left: 5px;
        background-color: #022627;
        border: 1px solid #59dace;
        cursor: pointer;
      }
      .active {
        background-color: #5de1d4;
        color: #022627;
      }
    }
    .companyBox {
      padding-left: 30px;
      padding-right: 14px;
      .companyList {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #fff;
        margin-bottom: 20px;
        .right {
          .rightImg {
            width: 94px;
            height: 32px;
            cursor: pointer;
          }
        }
        .left {
          font-size: 14px;
          color: #fff;
          .time {
            color: #2fc4b2;
          }
        }
      }
    }
  }
  .feelData {
    z-index: 999;
    width: 420px;
    height: 431px;
    background-image: url('@/assets/overall/Right_02@1x7.23.png');
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    right: 11px;
    top: 603px;
    .feelData-warp-O {
      height: 310px;
      overflow: hidden;
    }
    .feelData-warp {
      height: 310px;
      overflow: hidden;
      width: 100%;
      color: white;
      font-size: 18px;
      text-align: center;
    }
    .alarmWarningC {
      box-sizing: border-box;
      width: 420px;
      padding-top: 32px;
      display: flex;
      justify-content: right;
      align-items: center;
      padding-right: 15px;
      font-size: 12px;
      margin-bottom: 15px;
      .alarmDesc {
        width: 65px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        color: #59dace;
        border-radius: 2px;
        margin-left: 5px;
        background-color: #022627;
        border: 1px solid #59dace;
        cursor: pointer;
      }
      .active {
        background-color: #5de1d4;
        color: #022627;
      }
    }
    .detail {
      color: #5de1d4;
      font-size: 12px;
      font-weight: bold;
      position: absolute;
      top: 4px;
      left: 327px;
      cursor: pointer;
    }
    .feelListTitle {
      display: flex;
      // margin: 0 15px;
      color: #fff;
      width: 390px;
      font-size: 18px;
      .name {
        width: 128px;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        padding-left: 10px;
        text-align: center;
      }
      .equipName {
        width: 59px;
        margin: 0 20px;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        text-align: center;
      }
      .name2 {
        width: 75px;
        margin-right: 15px;
        text-align: center;
      }
      .value {
        width: 60px;

        text-align: center;
      }
    }
    .feelList {
      margin: 0 15px;
      margin-top: 15px;
      color: #fff;
      width: 390px;
      font-size: 14px;
      .feelItem {
        display: flex;
        width: 390px;
        height: 29px;
        line-height: 29px;
        margin-bottom: 16px;
        .name {
          width: 128px;
          white-space: nowrap;
          text-overflow: ellipsis;
          overflow: hidden;
          padding-left: 10px;
          text-align: center;
        }
        .equipName {
          width: 59px;
          margin: 0 15px;
          white-space: nowrap;
          text-overflow: ellipsis;
          overflow: hidden;
          text-align: center;
        }
        .name2 {
          width: 75px;
          margin-right: 15px;
          white-space: nowrap;
          text-overflow: ellipsis;
          overflow: hidden;
        }
        .value {
          width: 60px;
          color: #fa2929;
          text-align: center;
        }
      }
      .feelItemBgc {
        background-image: url('@/assets/overall/矩形 451@1x.png');
        background-size: cover;
        background-repeat: no-repeat;
        width: 390px;
        height: 29px;
        line-height: 29px;
        z-index: -9999;
      }
    }
    .feelListEmpty {
      width: 100%;
      text-align: center;
      padding: 50px;
      color: #fff;
      box-sizing: border-box;
    }
  }
}
.headerTitle {
  z-index: 99;
  background-image: url('@/assets/common/overall_head.png');
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  box-sizing: border-box;
  width: 1920px;
  height: 102px;
  text-align: center;
  padding-top: 9px;
  font-size: 40px;
  color: #fff;
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
}
.footerNav {
  z-index: 99;
  background-image: url('@/assets/common/组 48054@1x.png');
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 1920px;
  height: 48px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.areaSelect {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 110px;
  z-index: 99;
  color: #2fc4b2;
  display: flex;
  .allCity {
    background-image: url('@/assets/overall/矩形 287@1x.png');
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    width: 80px;
    height: 30px;
    text-align: center;
    line-height: 30px;
  }

  .allCityS {
    width: 80px;
    color: #2efffe;

    height: 30px;
    text-align: center;
    line-height: 30px;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('@/assets/overall/组 119@1x.png');
  }
  .allCityM {
    width: 96px;
    text-align: center;
    line-height: 30px;
    background-image: url('@/assets/overall/矩形 263@1x.png');
  }
  .allCityMS {
    color: #2efffe;

    width: 96px;
    background-image: url('@/assets/overall/矩形 293@1x.png');
  }
  .allCityL {
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    width: 112px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    background-image: url('@/assets/overall/矩形 452@2x.png');
  }
  .allCityLS {
    color: #2efffe;
    width: 112px;
    background-image: url('@/assets/overall/矩形 453@2x.png');
  }
}
.sheBeiZuo1dialogVisible {
  z-index: 9999;
  width: 960px;
  height: 580px;
  background-image: url('@/assets/overall/矩形 201@1x.png');
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 244px;
  .closeX {
    display: flex;
    justify-content: right;
    padding: 4px;
    img {
      cursor: pointer;
    }
  }
  .title {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    padding-left: 30px;
    margin-bottom: 8px;
    .subTitle {
      color: #9e9e9e;
      font-size: 12px;
    }
  }
  .table {
    padding: 0 30px;
    .el-table .warning-row {
      background-color: transparent;
      background: #022627 !important;
    }
    .el-table::before {
      display: none;
    }
  }
  .footerPage {
    width: 100%;
    text-align: center;
    margin: 10px auto 0;

    ::v-deep .el-pagination.is-background .el-pager li:not(.disabled).active {
      background-color: #62c1b2 !important; // 进行修改选中项背景和字体
      color: #fff;
    }
  }
  .picBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 44px;
    margin-bottom: -31px;
    box-sizing: border-box;
    img {
      width: 429px;
      height: 214px;
      margin-bottom: 31px;
    }
  }
  ::v-deep .el-table__empty-block {
    background-color: #053a3b !important;
    border: none;
    .el-table__empty-text {
      color: #fff;
    }
  }
}
.enterprise1dialogVisible {
  z-index: 9999;
  width: 960px;
  height: 580px;
  background-image: url('@/assets/overall/矩形 201@1x.png');
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 244px;
  .closeX {
    display: flex;
    justify-content: right;
    padding: 4px;
    img {
      cursor: pointer;
    }
  }
  .title {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    padding-left: 30px;
    margin-bottom: 8px;
    .subTitle {
      color: #9e9e9e;
      font-size: 12px;
    }
  }
  .table {
    padding: 0 30px;
    .el-table .warning-row {
      background-color: transparent;
      background: #022627 !important;
    }
    .el-table::before {
      display: none;
    }
  }
  .footerPage {
    width: 100%;
    text-align: center;
    margin: 10px auto 0;

    ::v-deep .el-pagination.is-background .el-pager li:not(.disabled).active {
      background-color: #62c1b2 !important; // 进行修改选中项背景和字体
      color: #fff;
    }
  }
  .picBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 44px;
    margin-bottom: -31px;
    box-sizing: border-box;
    img {
      width: 429px;
      height: 214px;
      margin-bottom: 31px;
    }
  }
  ::v-deep .el-table__empty-block {
    background-color: #053a3b !important;
    border: none;
    .el-table__empty-text {
      color: #fff;
    }
  }
}
.companyDetailDialogVisible {
  z-index: 9999;
  width: 1260px;
  height: 753px;
  background-image: url('@/assets/overall/companyDetail/矩形 201@1x.png');
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 152px;
  .closeX {
    display: flex;
    justify-content: right;
    padding: 4px;
    img {
      cursor: pointer;
    }
  }
  .companyBox {
    display: flex;
    justify-content: center;
    ::v-deep .el-table__empty-block {
      background-color: #053a3b;
      color: #2fc4b2;
    }
    ::v-deep .el-table__empty-text {
      color: #2fc4b2;
    }

    .left {
      padding-left: 30px;
      margin-right: 20px;
      .pic {
        img {
          width: 538px;
          height: 637px;
        }
      }
      .jC {
        margin-top: 15px;
        display: flex;
        align-items: center;
        width: 538px;
        height: 36px;
        left: 36px;
        color: #2fc4b2;
        justify-content: center;
        border: 1px solid #2fc4b2;
        img {
          width: 12px;
          margin-left: 10px;
          height: 12px;
        }
      }
    }
    .right {
      .rightTitle {
        color: #fff;
        font-size: 30px;
        font-weight: bold;
        margin-bottom: 10px;
      }
      .cardBox {
        display: flex;
        justify-content: right;
        padding-left: 10px;
        .cardItem {
          margin-right: 20px;
          margin-bottom: 20px;
          width: 390px;
          height: 130px;
          box-sizing: border-box;
          background-color: #053a3b;
          display: flex;
          align-items: center;
          // justify-content: space-between;
          padding-left: 25px;
          font-weight: bold;
          .leftPic {
            width: 61px;
            height: 61px;
            margin-right: 28px;
          }
          .rightName {
            .subT {
              color: #2fc4b2;
              margin-bottom: 10px;
            }
            .value {
              color: #fff;
            }
          }
        }
      }
      .tableBOx {
        width: 1220px;
        height: 300px;
        margin-left: 10px;
        ::v-deep .title_table .el-table__body-wrapper {
          display: none;
        }
        .seamless-warp {
          height: 200px;
          overflow: hidden;
        }
        /*隐藏第二个table表头*/
        ::v-deep .table_scroll .el-table__header-wrapper {
          display: none;
        }
        /* 修改行的悬浮背景色 */
        ::v-deep .el-table__body {
          tr:hover > td {
            background-color: #025e61 !important;
          }
        }
      }
    }
  }
}
.multiSelect {
  position: absolute;
  left: 50%;
  top: 150px;
  transform: translateX(-50%);
  z-index: 999;
  display: flex;
  color: #2efffe;
  width: 700px;
  height: 20px;
  .leftBOX {
    position: relative;
    position: absolute;
    left: 0;
    top: 0;
    background-image: url('@/assets/overall/组 48084@1x.png');
    .selectInp {
      width: 345px;
      height: 35px;
      background-size: cover;
      background-repeat: no-repeat;
      box-sizing: border-box;

      padding-top: 5px;
      padding-left: 26px;
      display: flex;
      .selectItem {
        width: 192px;
        height: 24px;
        line-height: 24px;
        background-color: #0d4d52;
        color: #5de1d4;
        padding-left: 5px;
        border-radius: 3px;
        display: flex;
        position: relative;
        margin-right: 8px;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        .street {
          width: 160px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          margin-right: 8px;
        }
        .imgI {
          width: 10px;
          height: 10px;
        }
        .errorX {
          position: absolute;
          right: 9px;
          top: 2px;
          font-size: 14px;
          cursor: pointer;
        }
      }
      .selectItemM {
        width: 49px;
        height: 24px;
        line-height: 24px;
        background-color: #0d4d52;
        color: #5de1d4;
        padding-left: 5px;
        border-radius: 3px;
        display: flex;
        position: relative;
        padding: 0 6px;
        .streetM {
          overflow: hidden;
          text-overflow: ellipsis;
        }
      }
      .arrowDown {
        position: absolute;
        right: 12px;
        top: 7px;
        color: #2efffe;
        cursor: pointer;
      }
    }
  }
  .rightBox {
    position: relative;
    position: absolute;
    right: 0;
    top: 0;
    background-image: url('@/assets/overall/组 48084@1x.png');
    .selectInp {
      width: 345px;
      height: 35px;
      background-size: cover;
      background-repeat: no-repeat;
      box-sizing: border-box;

      padding-top: 5px;
      padding-left: 16px;
      display: flex;
      .selectItem {
        width: 118px;
        height: 24px;
        line-height: 24px;
        background-color: #0d4d52;
        color: #5de1d4;
        padding-left: 5px;
        border-radius: 3px;
        display: flex;
        position: relative;
        align-items: center;
        margin-right: 5px;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        .street {
          width: 160px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          margin-right: 8px;
        }
        .imgI {
          padding: 0 5px;
        }
        .errorX {
          position: absolute;
          right: 9px;
          top: 2px;
          font-size: 14px;
          cursor: pointer;
        }
      }
      .selectItemM {
        width: 35px;
        height: 24px;
        line-height: 24px;
        background-color: #0d4d52;
        color: #5de1d4;
        padding-left: 5px;
        border-radius: 3px;
        display: flex;
        position: relative;
        padding: 0 6px;
        .streetM {
          overflow: hidden;
          text-overflow: ellipsis;
        }
      }
      .arrowDown {
        position: absolute;
        right: 12px;
        top: 7px;
        color: #2efffe;
        cursor: pointer;
      }
    }
  }
}
.multiStreetL {
  z-index: 999;
  width: 336px;
  height: 196px;
  background-image: url('@/assets/overall/组 48083@1x.png');
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 190px;
  left: 625px;
  padding: 10px 6px;
  color: #5de1d4;
  box-sizing: border-box;
  font-weight: 500;
  overflow-y: auto;
  .streetItem {
    // width: 321px;
    height: 24px;
    padding-left: 15px;
    padding-right: 9px;
    margin-bottom: 6px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    .right {
      display: none;
    }
  }
  .streetItem:last-child {
    margin: 0;
  }
  .streetItemChecked {
    background-color: #50cabe;
    color: #000;
  }
}
.multiStreetR {
  z-index: 999;
  width: 336px;
  height: 196px;
  background-image: url('@/assets/overall/组 48083@1x.png');
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 190px;
  left: 973px;
  padding: 10px 6px;
  color: #5de1d4;
  box-sizing: border-box;
  font-weight: 500;
  overflow-y: auto;
  .streetItem {
    // width: 321px;
    height: 24px;
    padding-left: 15px;
    padding-right: 9px;
    margin-bottom: 6px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    .left {
      width: 10%;
      img {
        width: 10px;
        background-color: none !important;
        height: 10px;
        margin-right: 12px;
      }
    }
    .rightBox {
      padding-right: 10px;
      width: 293px;
      display: flex;
      justify-content: space-between;
    }
    .right {
      display: none;
    }
  }
  .streetItem:last-child {
    margin: 0;
  }
  .streetItemChecked {
    background-color: #50cabe;
    color: #000;
  }
}
.hiddenBtn {
  position: absolute;
  left: 1309px;
  top: 110px;
  z-index: 999;
  cursor: pointer;
}
</style>
